Methods and devices for crosstalk compensation

ABSTRACT

A method includes measuring a first set of photon-event data collected from a first crosstalk-monitoring zone of an optical receiver during a first period of time of flight ranging, measuring a second set of photon-event data collected from a second crosstalk-monitoring zone of the optical receiver during the first period of time of flight ranging, and generating a first dynamic crosstalk compensation value for a first histogram region of the optical receiver using the first set of photon-event data, the second set of photon-event data, and a native crosstalk compensation value for the first histogram region of the optical receiver.

TECHNICAL FIELD

This application relates to methods and devices for crosstalkcompensation.

BACKGROUND

Time of Flight (ToF) systems may operate by using optical pulses toproject light into an environment and by using optical receivers tosense the light's return after reflection from objects in theenvironment. The optical receivers may undesirably detect crosstalk,which may interfere with the accuracy of ToF systems. Crosstalkinterference may be diminished by calibrating a ToF system. However,calibration may be sensitive to variations in operating conditions likesmudges or other imperfections that may alter the path of light from anoptical pulse. Dynamic compensation that adjusts during operation may bedesirable to improve operation of ToF systems.

SUMMARY

In accordance with an embodiment, a method includes: measuring a firstset of photon-event data collected from a first crosstalk-monitoringzone of an optical receiver during a first period of time of flightranging; measuring a second set of photon-event data collected from asecond crosstalk-monitoring zone of the optical receiver during thefirst period of time of flight ranging; and generating a first dynamiccrosstalk compensation value for a first histogram region of the opticalreceiver using the first set of photon-event data, the second set ofphoton-event data, and a native crosstalk compensation value for thefirst histogram region of the optical receiver.

In accordance with an embodiment, A Time of Flight system includes: anoptical source configured to emit an light into an environment; anoptical receiver including: a first histogram region comprising aplurality of radiation-sensitive pixels; a first crosstalk-monitoringzone comprising a plurality of radiation-sensitive pixels; and a secondcrosstalk-monitoring zone comprising a plurality of radiation-sensitivepixels. The Time of Flight system further includes a processor incommunication with the optical source, the optical receiver and a memorywherein the memory stores an instruction set that, when executed, causesthe processor to: drive the optical source to emit light for a time offlight ranging; collect data for a photon-count histogram from the firsthistogram region; calculate a dynamic crosstalk compensation value forthe first histogram region from a first set of photon-event datareceived from the first crosstalk-monitoring zone during the time offlight ranging and a second set of photon-event data received from thesecond crosstalk-monitoring zone during the time of flight ranging; andadjust the photon-count histogram based on the dynamic crosstalkcompensation value.

In accordance with an embodiment, a method includes measuringphoton-event data from a first leakage-monitoring zone of an opticalreceiver; determining that a leakage value of the firstleakage-monitoring zone is below a first threshold value; measuring afirst set of photon-event data collected from a firstcrosstalk-monitoring zone of the optical receiver during a first periodof time of flight ranging; measuring a second set of photon-event datacollected from a second crosstalk-monitoring zone of the opticalreceiver during the first period of time of flight ranging; generating afirst dynamic crosstalk compensation value for a first histogram regionof the optical receiver using the first set of photon-event data, thesecond set of photon-event data, and a native cross-talk compensationvalue for the first histogram region of the optical receiver; measuringa temperature; and producing a final dynamic crosstalk compensationvalue for the first histogram region by adjusting the first dynamiccrosstalk compensation value based on the temperature.

BRIEF DESCRIPTION OF THE DRAWINGS

One or more embodiments will now be described, by way of example only,with reference to the annexed figures, wherein:

FIG. 1 illustrates a ToF system of an embodiment;

FIG. 2A shows an enlarged view of an optical source, of an embodiment;

FIG. 2B shows an enlarged view of an optical receiver, of an embodiment;

FIG. 3 depicts a photon-count histogram;

FIG. 4 depicts a ToF system with a protective covering of an embodiment;

FIG. 5A through FIG. 5D illustrate various view of a signal mapdepicting crosstalk detected by an optical receiver in nativeconditions;

FIG. 6A through FIG. 6D illustrate various view of a signal mapdepicting crosstalk detected by an optical receiver with crosstalkvariation from native conditions;

FIG. 7, depicts an optical receiver comprising monitoring zones of anembodiment.

FIG. 8A through FIG. 8D depict a signal map showing results of nativecrosstalk compensation;

FIG. 9A through FIG. 9D depict a signal map showing results of dynamiccrosstalk compensation of an embodiment;

FIG. 10 depicts an optical receiver comprising leakage-monitoring zonesin accordance with an embodiment;

FIG. 11 depicts a plot showing relationship between crosstalk andtemperature for a lookup table of an embodiment;

FIG. 12 depicts a flow diagram for dynamic crosstalk compensation of anembodiment;

FIG. 13 depicts a flowchart in accordance with an embodiment; and

FIG. 14 depicts a flowchart in accordance with an embodiment.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

In the ensuing description, one or more specific details areillustrated, aimed at providing an in-depth understanding of examples ofembodiments of this description. The embodiments may be obtained withoutone or more of the specific details, or with other methods, components,materials, etc. In other cases, known structures, materials, oroperations are not illustrated or described in detail so that certainaspects of embodiments will not be obscured.

Reference to “an embodiment” or “one embodiment” in the framework of thepresent description is intended to indicate that a particularconfiguration, structure, or characteristic described in relation to theembodiment is comprised in at least one embodiment. Hence, phrases suchas “in an embodiment” or “in one embodiment” that may be present in oneor more points of the present description do not necessarily refer toone and the same embodiment. Moreover, particular conformations,structures, or characteristics may be combined in any adequate way inone or more embodiments.

The references used herein are provided merely for convenience and hencedo not define the extent of protection or the scope of the embodiments.

Time of Flight (ToF) systems are used in many applications to detectobjects in a three dimensional space. In various embodiments, a Time ofFlight system may cast light onto a scene and detect the time it takesfor light to be reflected from objects in the scene back to the Time ofFlight system. In various embodiments, the time of flight of the photonsreflected from objects in the environment, along with the speed oflight, may be used to calculate the distances between objects in a threedimensional environment and the ToF system.

FIG. 1 illustrates a ToF system 100 of an embodiment of the presentdisclosure.

An object 101 is disposed in a three dimensional environment positionedin front of the ToF system 100. The ToF system 100 may be used todetermine the proximity of the object 101 to the ToF system 100. Theobject 101 is provided for explanatory purposes. The three-dimensionalenvironment may include additional objects of various shapes or sizesdisposed at varying distances from the ToF system 100 and the ToF system100 may determine the proximity of the various objects in thethree-dimensional environment during ToF rangings. The object 101 maycomprise multiple surfaces at various distances from the ToF system 100,and the ToF system 100 may determine the depth of the different surfacesof the object 101. The ToF system 100 may simultaneously detect theproximity of additional objects in the three dimensional environmentfrom the ToF system 100. In various embodiments, the ToF system 100 mayalso comprise a memory 132. The processor 126 may store data in thememory 132 and retrieve data from the memory 132. The memory 132 may bea non-transitory computer readable medium. The memory 132 may also storeprograms that may be executed by the processor 126.

The ToF system 100 may comprise an optical source 102 and an opticalreceiver 104.

FIG. 2A shows an enlarged view of an optical source 102, in accordancewith an embodiment.

As depicted in FIG. 2A, the optical source 102 may comprise a pluralityof optical emitters 102-1 to 102-NN arranged as an array. Although theexample of FIG. 2A illustrates the optical emitters 102-1 to 102-NN asbeing arranged in a square N×N array, other array shapes (e.g.ellipsoidal arrays or circular-shaped arrays) may be possible in otherembodiments. Each of the optical emitters 102-1 to 102-NN may compriseone or more infrared sources, modulated light emitting diodes (LEDs), orsemiconductor lasers, or combinations thereof, although other types ofoptical sources may be possible.

In various embodiments, where the optical emitters 102-1 to 102-NNcomprise semiconductor lasers, an optical emitter 102-i of the array ofoptical emitters 102-1 to 102-NN may comprise one or morevertical-cavity surface-emitting lasers (VCSELs), quantum well lasers,quantum cascade lasers, interband cascade lasers, or verticalexternal-cavity surface-emitting lasers (VECSELs), or the like.

The optical emitters 102-1 to 102-NN may be configured to operate at thesame wavelength. In other embodiments, however, the optical emitters102-1 to 102-NN may operate at different wavelengths. For example, thegroup 108 of optical sources and the group 110 of optical emitters 102-1to 102-NN may operate at different wavelengths. The optical emitters102-1 to 102-NN may exhibit continuous wave (CW) operation,quasi-continuous wave (QCW) operation, or pulsed operation.

Referring back to FIG. 1, in various embodiments, the ToF system 100 maycomprise an optical source driver 112. The operation of the opticalemitters 102-1 to 102-NN of the optical source 102 may be controlled bythe optical source driver 112, which is configured to generate a drivecurrent 114 that is capable of activating the array of optical emitters102-1 to 102-NN, thereby causing the optical emitters 102-1 to 102-NN toemit photons.

In various embodiments, the array of optical emitters 102-1 to 102-NNmay be an addressable array of optical emitters 102-1 to 102-NN. Thearray of optical emitters 102-1 to 102-NN may be individuallyaddressable where an optical emitter 102-i (shown in FIG. 2A) of thearray of optical emitters 102-1 to 102-NN is addressable independentlyof another optical emitter 102-j of the array of optical emitters 102-1to 102-NN. The drive current 114 provided by the optical source driver112 to the optical source 102 may cause an optical emitter 102-i to beactivated (and thereby emit photons), while simultaneously keeping anoptical emitter 102-j deactivated (and thereby not emit a photons). Invarious embodiments, the optical emitters 102-1 to 102-NN may beaddressable as a group or cluster, where one group 108 of opticalemitters 102-1 to 102-NN is addressable independently of another group110 of optical emitters 102-1 to 102-NN.

In various embodiments, the drive current 114 provided by the opticalsource driver 112 to the optical source 102 may cause the group 108 ofoptical emitters 102-1 to 102-NN to be activated (and thereby emit aphoton), while simultaneously causing another group 110 of opticalemitters 102-1 to 102-NN to be deactivated (and thereby not emit aphoton).

Radiation (light) emanating from the optical source 102, collectivelyshown in FIG. 1 as reference numeral 116 using solid arrows, may beincident upon the object 101. The incident radiation 116 is reflectedoff the object 101 to produce reflected radiation 118. It is noted thatalthough incident radiation 116 and reflected radiation 118 arerepresented in FIG. 1 by a few arrows, all radiation incident on andreflected from the object 101 may be combined in one beam or cone ofradiation. While some part of the incident radiation 116 may bescattered depending upon the surface features of the object 101, asignificant part of the incident radiation 116 may be reflected, therebyproducing the reflected radiation 118.

The optical receiver 104 receives the reflected radiation 118 andgenerates an output signal 120 in response to the reflecting radiation118 striking the optical receiver 104.

In various embodiments, the optical receiver 104 may comprise a lens 124to direct photons from the environment into the sections of the opticalreceiver 104.

In various embodiments, the ToF system 100 may comprise one or more timeto digital converters. A TDCs may measure the interval between theemission of incident radiation 116 from the optical source 102 and thearrival of reflected radiation 118 at the optical receiver 104 andprovide it to the processor 126.

FIG. 2B shows an enlarged view of the optical receiver 104, inaccordance with an embodiment.

As depicted in FIG. 2B, the optical receiver 104 may comprise aplurality of radiation-sensitive pixels 104-1 to 104-KK. Although theexample of FIG. 2B illustrates the radiation-sensitive pixels 104-1 to104-KK as being arranged in a square K×K array, other array shapes (e.g.ellipsoidal arrays or circular-shaped arrays) may be possible in otherembodiments.

The radiation-sensitive pixels 104-1 to 104-KK may comprisesingle-photon avalanche diodes (SPADs), photo diodes (PDs), avalanchephoto diodes (APDs), or combinations thereof. In various embodiments,some or all of the plurality of radiation-sensitive pixels 104-1 to104-KK may comprise a plurality of individual light-detecting sensors.The radiation-sensitive pixels 104-1 to 104-KK may generate an eventsignal each time they are hit by a photon.

As shown in FIG. 1, the ToF system 100 further comprises a processor 126configured to receive the output signal 120 from the optical receiver104 to communicate the signals generated from the radiation-sensitivepixels 104-1 to 104-KK detect photons. The processor 126 may analyze thedata. In various embodiments, analysis may determine the proximity ofthe object 101, or objects, detected by the optical receiver 104 to theToF system 100 based on the output signal 120.

The optical source driver 112 may be programmed to drive all the opticalemitters 102-1 to 102-NN in the array of optical emitters 102-1 to102-NN to generate incident radiation pulses. The optical emitters maybe driven independently, in groups, or a whole. The optical sourcedriver 112 may receive a control signal 134 from the processor 126 thatinitiates the optical source driver 112. In various embodiments, theoptical source driver 112 may provide data for synchronization at anoutput 130 to the processor 126.

The radiation from the optical source 102 may be projected in theenvironment and reflected from object 101. In various embodiments theemission may occur in a predetermined timing sequence or atpredetermined timing intervals. The object 101 may reflect the incidentradiation 116 and the arrival times of the pulses of reflected radiation118 at the optical receiver 104 are proportional to twice the distancebetween the object 101 and the ToF system 100, based on the speed oflight in the measurement medium or environment. The arrival time of aphoton may be used to calculate the distance of an object that reflectedthe photon.

The optical source 102 may comprise an array of semiconductor lasers(e.g. VCSELs), while the optical receiver 104 may comprise an array ofhigh speed photodetectors (e.g. SPADs). The optical receiver 104 may beconfigured to record at least one of arrival times, pulse shapes, orintensities of the pulses of reflected radiation 118. Reflectedradiation 118 may arrive at different times at the optical receiver 104,depending on the respective distances between the different parts of theobject 101 or other objects in the three-dimensional environment and theToF system 100. The reflected radiation 118 may be detectedsynchronously with a timing signal that is configured to cause theoptical source driver 112 to generate incident radiation 116. Theprocessor 126 may analyze the ToF between emission of incident radiation116 travelling towards the object 101 and arrival of reflected radiation118 received at the optical receiver 104 to determine the proximity ofthe object 101 or objects in the three-dimensional environment. Aplurality of proximity measurements may be used to generate acomprehensive set of data to accurately determine the depth (e.g. alongthe z-axis shown in FIG. 1) of the object or objects in thethree-dimensional environment.

In various embodiments, photons detected by a radiation-sensitive pixel,or a group of radiation-sensitive pixels, during a ToF ranging may becategorized based on the time of flight to generate a histogram ofestimated distances of the object or surface that reflected theradiation to the radiation-sensitive pixel. The time of flight of aphoton sensed at a radiation-sensitive pixel may grouped into a binbased on the time of arrival of the photon at the optical receiver 104.The time of arrival, will correlate to distance of the object from theToF system 100. As additional photons are sensed during a measurement(exposure, frame or ToF ranging), they may also be assigned to a bin.The various bins may accumulate a photon count and the distribution ofphotons in the various bins may be used to calculate the distance fromthe ToF system 100 of the reflective surface measured at theradiation-sensitive pixel. In various embodiments, a photon-counthistogram may be accumulated over a plurality of samples.

FIG. 3 depicts a photon-count histogram 300.

The vertical axis of the photon-count histogram 300 represents themagnitude of photons counted. The horizontal axis of the histogramrepresents the time of flight of the photons. During a counting period306 after an emissions of an optical pulse, reflected photons may bedetected the optical receiver 104 and grouped depending on the timebetween the emission of the optical pulse sourcing the photon and thetime that they are detected. These groupings may be referred to as bins304. For example, a 64-nanosecond counting period 306 may be dividedinto 64 periods, or bins, each period comprising a one nanosecondperiod. The duration and number of bins may differ in variousembodiment.

In various embodiments, the histogram for a ToF ranging may beaccumulated from a plurality of samples. For example, during a firstsample, a first optical pulse may be emitted and photons countedaccording to their times of flight. During a second sample, a secondoptical pulse may be emitted and the photons counted according to theirtimes of flight. The counts from the first and second samples may beaggregated into a single histogram for a ToF ranging. As will beappreciated, in various embodiments, a single histogram may aggregateany number of samples desired.

Each bin may also correspond to a distance range because the time rangesmay be correlated to distances based on the relationship between thetime of flight of the photons and the speed of light. The bins of thehistogram may be alternatively represented, or referred to as distancesrather than time because of this relationship.

In various embodiments, a photon-count histogram 300 may be used todetect objects in the environment. The objects may be reflected in thehistogram by peaks in the photon count of the photon-count histogram300. For example, a peak 310 may correspond to a first object located ata first distance from the ToF system 100 in the environment. Theprocessor 126 may analyze the photon-count histogram 300 to identifypeaks and determine the distance of the object producing the peak in thephoton count.

Returning to FIG. 2B, in various embodiments, the radiation-sensitivepixels 104-1 to 104-KK may be divided into histogram regions. Eachhistogram region of the optical receiver may produce a single histogram.For example, an optical receiver comprising 64 histogram regions, maygenerate 64 histograms In various embodiments, the histogram regions maybe sampled in groups. For example, in various embodiments, 16 histogramregions of a 64 histogram-region optical receiver may first be sampledto generate photon-count histograms for those 16 histogram regions. 16more histogram regions may then be sampled to generate photon-counthistograms for the second 16 histogram regions. And, this may continueuntil all 64 histogram regions have been sampled.

The photon counts of the individual radiation-sensitive pixels of aregion may be aggregated to produce the histogram for that region. Itmay be advantageous to build a photon-count histogram 300 from more thanone radiation sensitive pixel to improve the signal to noise ratio of aphoton-count histogram 300. As an example, a first region 107 of theoptical receiver 104 may comprise four radiation-sensitive pixels. And,the photon counts produced by each of the four radiation-sensitivepixels of the first region 107 may be aggregated to accumulate thephoton-count histogram for the first histogram region. In variousembodiments, the outputs of each radiation-sensitive pixel of a givenregion may be coupled to an OR tree for that region to produce a photoncount for that region. As will be appreciated, the number or regions peroptical receiver 104 may differ in various embodiments. The number ofradiation-sensitive pixels per histogram region may also differ invarious embodiments.

With reference to FIG. 3, crosstalk detected by an optical receiver in aToF system may cause unwanted peaks in the photon-count histogram 300.Crosstalk may be caused with photons from an optical pulse are detectedand counted without being projected in the environment. This may cause acrosstalk peak 308 in the photon-count histogram 300. And, the crosstalkmay compromise the performance of a ToF system. Ambient light in anenvironment may contribute noise to a histogram. This may be representedin a histogram as a constant level 303.

In various embodiments, a ToF system 100 may be embedded in a largerdevice such a mobile phone. The ToF system 100 may be protected by glassor another material. However, this may increase the crosstalkexperienced by the ToF system 100.

FIG. 4 depicts an embodiment of the ToF system 100 with a protectivecovering of an embodiment.

A optical source 102 may project outgoing radiation 116 into anenvironment where it is reflected from an object 101 and returned to anoptical receiver 104. In various embodiments, a protective covering 406,which may be made out of glass, plastic or other material, may fittedbetween the optical source 102 and the environment. The protectivecovering 406 may undesirably redirect outgoing light from the opticalsource 102 to the optical receiver 104 along a crosstalk path 402. Thislight may be detected by the optical receiver 104 and counted as part ofone or more photon-count histograms 300. In various embodiments, afteran optical pulse crosstalk may be detected nearly instantaneouslybecause of the small distance that light has to travel from the opticalsource 102 to the optical receiver 104. This may cause an the ToF systemto erroneously determine that an object is located at a zero distance ornear-zero distance from the ToF system, which may be undesirable. Invarious embodiments, the ToF system 100 may further comprise a referenceoptical receiver 412 that may be used to track the time of an initialpulse from the optical source 102 for calculating the times of flight ofphotons emitted by the optical source 102.

Crosstalk correction techniques may compensate for crosstalk bysubtracting crosstalk contributions from a photon-count histogram 300.Some such techniques are disclosed in U.S. patent application Ser. No.15/886,353, which is incorporated by reference herein. Crosstalkcorrection may be accomplished by storing a normalized histogramcalculated from data collected during a calibration that contains onlycrosstalk. Data may be collected and calculated for each histogramregion of an optical receiver. Collectively, this data set may bereferred to as the “crosstalk shape.” During calibration, the crosstalkshape can be used to find a native crosstalk compensation value for eachhistogram region, for example by finding the peak of the crosstalkpulse. During real time operations, a crosstalk histogram may becalculated, for each region, by scaling the normalised crosstalk shapeaccording to the native crosstalk compensation value for each histogramregion and by aligning it in time with the expected location of thecrosstalk, which may be the zero-range position. The calculatedcrosstalk histogram, for each region, may be subtracted from itsrelevant region histogram to compensate the crosstalk for thatparticular region.

The magnitude of the crosstalk detected by the optical receiver 104 maybe dependent on a number of factors such as the distance 404 between ToFsystem 100 and a protective covering, the type of protective covering406, the thickness of the protective covering 406, imperfections in theprotective covering 406, materials used for protective covering, finishof the protective covering 406, and other variations in an arrangementof the optical source 102 and the optical receiver 104 (such as, but notlimited to, field of view, separation of components like the opticalsource and optical receiver, existence of baffles, gaskets). Crosstalkmay create under-ranging or over-ranging inaccuracies if a crosstalkpulse in a photon-count histogram 300 overlaps with a pulse created fromphotons reflected from an object in an environment.

Calibration may be performed to adjust a ToF system 100 to allowcrosstalk cancellation. In various embodiments, nativecrosstalk-compensation values—crosstalk compensation values when the ToFis in a controlled environment—may be generated and stored in a memory132 during calibration. The processor 126 may reference the nativecrosstalk compensation values during ranging operations to determine themagnitude of any crosstalk compensation.

In various embodiments, calibration may be performed before a ToF system100 is introduced into the field. Calibration may comprise testing theoperation of a ToF system 100 before the protective cover 402 has beeninstalled and after a protective cover 402 has been installed todetermine the impact that the protective cover 402 may have on crosstalkrealized by a ToF system.

Crosstalk compensation values may be calculated from test resultsgenerated from operation of the ToF system 100 without a protectivecover 402 and with an object at a known distance in the range of the ToFsystem, and from test results generated from operation of the ToF system100 with a protective cover 402 and without any objects located in rangeof the ToF system. This may provide test data to measure the magnitudeof crosstalk introduced by the addition of the protective cover 402 tothe ToF system. Crosstalk compensation values may be produced from thisdata to scale the magnitude of the compensation for a photon-counthistogram.

In various embodiments, a native crosstalk-compensation value may begenerated for each histogram region of an optical receiver 104. Each ofthese values may be stored in memory 132 and accessed to adjust eachphoton-count histogram according to the correspondingcrosstalk-compensation value. For example, if an optical devicecomprises 64 histogram regions, a native crosstalk-calibration value maybe calculated during calibration for each of the 64 histogram regions.

Crosstalk calibration values generated before a ToF system 100 has beenintroduced into the field may not account for variations that occurafter the ToF system 100 has been introduced into the field that mayimpact crosstalk. Dirt, fingerprints, smudges or other imperfections ona protective cover 402 may increase the amount the of crosstalk detectedby an optical receiver 104.

FIG. 5A through FIG. 5D illustrate various view of a signal mapdepicting crosstalk detected by an optical receiver in nativeconditions.

The signal map in FIG. 5A depicts a top down view of a grid thatcorresponds to an optical receiver 104. The cells of the grid in thesignal map correspond to the radiation-sensitive pixels of an opticalreceiver 104. The cells of the grid in the signal map are shaded torepresent the total number of photons counted during a sample performedin a system in native condition (smudge free). The data for the signalmap in FIG. 5A through 5D was collected without any objects in the rangeof the ToF system 100 so that it may show crosstalk detected duringnative conditions. It should be noted, that the photon-count data in thesignal map is not categorized according to their time of flight. Thesignal map only represents a raw count of the photon events during agiven time period.

FIG. 5B depicts a perspective view of the signal map from FIG. 5A. The Zaxis of the signal map represents the magnitude of the total photoncount. The magnitude is depicted with respect to a count perradiation-sensitive pixel (CPS). FIG. 5C depicts a view of the signalmap from the Y-axis and FIG. 5D depicts a view of the grid from theZ-axis.

FIG. 6A through FIG. 6D illustrate various view of a signal mapdepicting crosstalk detected by an optical receiver with crosstalkvariation from native conditions.

FIG. 6A depicts a top down view of a signal map that corresponds to anoptical receiver 104. The cells of the grid in the signal map, onceagain, correspond to a radiation-sensitive pixels of an optical receiver104. The cells of the grid are, again, shaded to represent the totalnumber of photon events detected during a time period, but without timeof flight information. The data for the grids in FIG. 6A through 6D, incontrast to the data collected for the signal map in FIG. 5A through 6D,was collected with smudging on the protective layer 406 of an opticalreceiver. The data for the signal map in FIG. 6A through 6D was alsocollected without any objects in the range of the ToF system 100 so itmay be viewed to represent the crosstalk detected after smudging hasoccurred.

FIG. 6B depicts a perspective view of the signal map from FIG. 6A. The Zaxis represents the magnitude of the total photon count in CPS. FIG. 6Cdepicts a view of the signal map from FIG. 6A from the Y-axis and FIG.6D depicts a view of the signal map from the X-axis.

The potential impact that in-field variation (like smudges) may be seenby comparing the signal map from FIG. 5A through 5B with the signal mapfrom FIG. 6A through 6B. As shown, the magnitude of the crosstalk (interms of total photon count per ranging) has nearly doubled for some ofthe cells of the grid. And, smudges, or other in-field variations, maycause even greater changes in crosstalk than what is depicted in FIG. 6Athrough 6B. As will be appreciated, such variation may limit theeffectiveness of the crosstalk compensation values generated during thenative state of a ToF system 100 in a device. It, thus, may beadvantageous to implement dynamic crosstalk compensation that may adjustto changing conditions.

In various embodiments, an optical receiver 104 may comprise monitoringzones that may be used to measure crosstalk during ranging operations.Live data collected from the monitoring may be utilized to generatedynamic crosstalk compensation values. In various embodiments, thedynamic crosstalk compensation values may adjust native crosstalkcompensation values based on data collected from monitoring zones duringlive ToF ranging. In various embodiments, data may be collected frommonitoring zones while histogram regions are simultaneously collectingdata to build photon-count histograms. The monitoring zones of anoptical receiver 104 may be positioned in parts of an optical receiverthat are more likely to detect crosstalk and less likely to detectphotons reflected from objects in the environment.

Referring back to FIG. 5A through 5D and FIG. 6a through 6D, it isevident that more crosstalk photon events may be detected at the leftand right sides of an optical receiver 104. Changes in the centralregions of the optical receiver due to crosstalk, as shown in FIG. 6Athrough 6D, may have correlations with crosstalk changes at the edges ofthe optical receiver. This may allow changes in the monitoring zones tobe used to estimate crosstalk realized in the central regions of anoptical receiver. Interpolation may be used to assign dynamic correctionvalues to the regions of the optical receiver based on data collectedfrom monitoring zones. Radiation-sensitive pixels at the edges of anoptical receiver may be less likely to detect photons reflected from anobject within range of a ToF system 100. Due to various optical effects,photon events detected from objects are concentrated in the centralregions of an optical receiver and may decrease the further a radiationsensitive pixel is from central regions of the optical receiver. As aresult, it may be advantageous to locate monitoring zones of an opticalreceiver 104 at the edges of an optical receiver. This may allowcrosstalk data to be collected from the monitoring zones while thecentral regions are collecting photon-count data for photon-counthistograms.

FIG. 7, depicts an optical receiver comprising monitoring zones of anembodiment.

In various embodiments, an optical receiver 104 may comprise a firstcrosstalk monitoring zone 702 and a second crosstalk monitoring zone704. The first crosstalk monitoring zone 702 may comprise a one or moreradiation-pixels. The number of pixels in the first crosstalk monitoringzone 702 may vary in various embodiments. The second crosstalkmonitoring zone 702 may comprise a one or more radiation-pixels. Theoptical receiver may also comprise a first histogram region. The numberof pixels in the second crosstalk monitoring zone 704 may vary invarious embodiments. Photon event data detected within the firstcrosstalk monitoring zone 702 and the second crosstalk monitoring zone704 may be transmitted to the processor 126.

The optical receiver 104 may also comprise a first histogram region.107. The number of radiation-sensitive pixels may vary in variousembodiments. The optical receiver 104 may also comprise additionalhistogram regions. In various embodiments, the optical receiver 104 maycomprise 64 histogram region. Each region may be used to generate aphoton-count histogram 300.

In various embodiments, it may be advantageous to locate histogramregions between the first crosstalk monitoring zone 702 and the secondcrosstalk monitoring zone 704. This may be advantageous to allow theradiation-sensitive pixels of the regions to detect photon eventgenerated (or primarily) by crosstalk while the histogram monitoringregions are detecting photons reflected from objects in an environmentthat may be used to generate photon-count histograms so dynamiccompensation values may be calculated based on measurements taken duringoperation. And this data can be used to compensate for changes incrosstalk caused smudges and other deviations. As will be appreciated,in various embodiments, an optical receiver 104 may comprise more thantwo monitoring zones.

Photon-event data collected from the first crosstalk monitoring zone 702and the second crosstalk monitoring zone 704 during ToF ranging may beused to calculate dynamic crosstalk compensation values. Thephoton-event data may comprise the photon count detected byradiation-sensitive pixels of a monitoring zone over one or more rangingtime periods. In various embodiments, the photon-event data may comprisea value that has been averaged based on the number of radiation pixelsin the corresponding monitoring zone.

In various embodiments, the photon-event data collected from the firstmonitoring zone 702 and the second monitoring zone 704 may comprise acount of photon events detected during a desired time period. In variousembodiments, the photon-event data collected from the first monitoringzone 702 and the second monitoring zone 704 may also comprise time offlight data for photons detected. This may be accomplished by binningphotons detected by the first monitoring zone 702 and the secondmonitoring zone 704 according to the time of detection relative to timeof emission of an optical pulse. This may be advantageous fordiscriminating photons counted as a result of crosstalk from othercauses.

In various embodiments, a dynamic crosstalk compensation value may begenerated for each histogram region of an optical receiver 104. dynamiccrosstalk compensation values for the histograms may be calculated byinterpolating between the crosstalk values (photon event data) measuredat the first crosstalk monitoring zone 702 and the second crosstalkmonitoring zone 704. The interpolation may be weighted based on themagnitude of the difference between the native crosstalk compensationvalues calculated during calibration of the ToF system 100 and the datacollected from the first measurement region 702 and the secondmeasurement region 704 during live time of flight measurements. Invarious embodiments, spatial interpolation based on the position of ahistogram region relative to the first crosstalk monitoring zone 702,the second crosstalk monitoring zone 704 or both.

For example, The photon-event data measured during calibration for thefirst crosstalk monitoring zone 702 and the second crosstalk monitoringzone 704 may be stored in memory 132 along with native crosstalkcompensation values for the histogram regions of an optical receiver104. The photon event data from the calibration period may be averagedon a per radiation-sensitive pixel basis. The data collected duringcalibration may be compared with data collected during live ToF rangingfrom the first crosstalk monitoring zone 702 and the second crosstalkmonitoring zone 704 to determine how much of a change there has been incrosstalk detected by the first crosstalk monitoring zone 702 and thesecond crosstalk monitoring zone 704 between calibration and live ToFranging (due possibly to smudging).

Photon event data may be gathered during ToF ranging for the firstcrosstalk monitoring zone 702 and the second crosstalk monitoring zone704. This photon event data may be averaged on a per radiation-sensitivepixel basis like the data collected during calibration. The amount oftime desired for collecting additional photon data may vary in variousembodiments. In various embodiments photon-event data may be collectedover multiple samples to account for noise generated by ambient lightand the intrinsic shot noise of the crosstalk itself.

The photon event data measured during calibration for the firstcrosstalk monitoring zone 702 may be subtracted from the photon-eventdata measured during the live ToF time period to produce a normalizationfactor for the first crosstalk monitoring zone. The photon event datameasured for both calibration and during live ranging may be average perradiation pixel before calculation of the normalization factor. Photonevent data measured during calibration for the second crosstalkmonitoring zone 704 may be subtracted from the photon-event datameasured during the live ToF time period to produce a normalizationfactor for the second crosstalk monitoring zone 704. The normalizationfactor for the first crosstalk monitoring zone 702 may provide a metricof the change in crosstalk detected by an optical receiver 104 sincecalibration. Likewise, normalization factor for the second crosstalkmonitoring zone 704 may provide a metric of the change in crosstalkdetected by an optical receiver 104 since calibration, which may be dueto smudging.

A weighting factor may be calculated by taking difference between thenormalization factor relating to the second crosstalk monitoring zone704 and the normalization factor relating to the first crosstalkmonitoring zone 702 and dividing by the difference between photon-eventdata collected from the first crosstalk monitoring zone 702 and thesecond crosstalk monitoring zone 704 during calibration. In variousembodiments, the weighting factor may calculated according to Equation1, below.

weighting factor=(second normalization factor−first normalizationfactor)/(first datum−second datum)   Equation 1

In Equation 1, the first normalization factor may comprise anormalization factor for the first monitoring zone 702, the secondnormalization factor may comprise a normalization factor for the secondmonitoring zone 704, the first datum may comprise photon event datacollected during calibration for the first monitoring zone 702 averagedper pixel of the first monitoring zone 702, and the second datum maycomprise photon event data collected during calibration for the secondmonitoring zone 704 averaged per pixel of the second monitoring zone 704averaged per pixel of the second monitoring zone.

In various embodiments, the weighting factor may be multiplied by thedifference in magnitude between the native crosstalk compensation value(that may be an averaged value per radiation-sensitive pixel) for ahistogram region and the averaged (per radiation-sensitive pixel) photonevent data collected from the second region. This product (which may benegative) may be subtracted from the normalization factor of the secondmonitoring region 704 to generate a dynamic component of a dynamiccrosstalk compensation value for that histogram region. The dynamiccomponent may be added to the native crosstalk compensation value forthat histogram region (a static component) to produce the dynamiccrosstalk compensation value for that histogram region. This may berepeated for each histogram region of an optical receiver 104. And, thedynamic crosstalk compensation values may be stored in the memory 132 sothey may be referenced (by the processor 126 in some embodiments) toadjust the photon count histograms to mitigate the impact of crosstalkon distances calculated using the photon count histograms.

In various embodiments, a dynamic crosstalk compensation value may becalculated for each pixel and then averaged with other pixels located inthe same region to generate a dynamic crosstalk compensation value forthe region. In various embodiments, each region may comprise a singlepixel.

In various embodiment, dynamic crosstalk compensation values may becalculated based on a spatial interpolation for the histogram regionsdepending on their distance for the first crosstalk monitoring zone 702and the second crosstalk monitoring zone 704.

FIG. 8A through FIG. 8D depict a signal map showing results of nativecrosstalk compensation.

FIG. 8A shows a top down view of the signal map. FIG. 8B shows aperspective view of the signal map. FIG. 8C shows a view of the signalmap from the Y-axis. And, FIG. 8D shows a view of the signal map fromthe X-Axis.

FIG. 9A through FIG. 9D depict a signal map showing results of dynamiccrosstalk compensation of an embodiment.

FIG. 9A shows a top down view of the signal map. FIG. 9B shows aperspective view of the signal map. FIG. 9C shows a view of the signalmap from the Y-axis. And, FIG. 9D shows a view of the signal map fromthe X-Axis.

Comparing the signal map from FIG. 8A through 8D and FIG. 9A through 9Dshows that the dynamic crosstalk compensation may cut the crosstalkerror by more than half.

In various embodiments, the photon event data measured by the firstcrosstalk monitoring zone 702, the second crosstalk monitoring zone 704or both may be impacted by photons being reflected from objects in thevicinity of a ToF system 100. For example, reflective objects that areclose to a ToF system may produce a strong signal in the histogramregions of an optical receiver 104 that may also be detected at thefirst crosstalk monitoring zone 702 and the second monitoring 704. Thismay inflate the photon event data measured at first crosstalk monitoringzone 702 and the second crosstalk monitoring zone 704. Dynamic crosstalkcompensation values calculated using inflated photon event data may leadto overcompensation. The undesirable signal detected at the firstcrosstalk monitoring zone 702 and the second crosstalk monitoring zone704 may be termed leakage. And, the leakage signal may dominate thecrosstalk signal measured in the first crosstalk monitoring zone 702 andthe second monitoring 704 in some conditions. For example close, highlyreflective objects may risk high leakage signals. It may be advantageousto monitor regions an optical receiver to gauge leakage and deactivatedynamic crosstalk compensation if leakage is too high.

FIG. 10 depicts an optical receiver comprising leakage-monitoring zonesin accordance with an embodiment.

The optical receiver 104 may comprise a first leakage-monitoring zone1002. In various embodiment photon-event data for the firstleakage-monitoring zone 1002 may be measured while the first crosstalkmonitoring zone 702 and the second crosstalk monitoring zone 704 arebeing measured. In various embodiments, dynamic crosstalk compensationfor a ToF system 100 may be deactivated if the photon-event data withinthe first leakage-monitoring zone 1002 is greater than desired. This maybe accomplished by setting a threshold value for the firstleakage-monitoring zone 1002. If the threshold is exceeded, then dynamiccrosstalk compensation may be disabled. In various embodiments, thethreshold may be based on photon event data that averaged per radiationpixel of the first leakage-monitoring zone 1002. The threshold, itself,may also be subject to compensation due to conditional changes such astemperature fluctuation. The signal from the first leakage-monitoringzone 1002 may be adjusted for crosstalk before determining whether thethreshold has been exceeded to prevent high crosstalk from disablingdynamic crosstalk compensation. The crosstalk compensation for thesignal from the first crosstalk monitoring zone 702 may be based on themost recent dynamic crosstalk compensation value generated. In variousembodiments, the crosstalk compensation for the signal from the firstcrosstalk monitoring zone may be based on native crosstalk compensation.The first leakage-monitoring zone 1002 may overlap partially orcompletely with the histogram regions of the optical receiver. 104.

The optical receive 104 may comprise additional leakage-monitoringzones. A second leakage-monitoring zone 1004 may cover a secondleakage-monitoring region of an optical receiver 104. A thirdleakage-monitoring zone 1006 may cover a third leakage-monitoring regionof an optical receiver 104. As will be appreciated, an optical receiver104 may comprise additional leakage monitoring zones. The leakagemonitoring zones may overlap with each other. Each leakage monitoringzone may also have a corresponding threshold. And, dynamic crosstalkcompensation may be deactivated if any of the thresholds are exceeded.In various embodiments, it may be advantageous to have multipleleakage-monitoring regions to detect high signals that are localized,which may impact data in a monitoring zone.

Crosstalk may also vary due to environmental conditions such astemperature. As temperature increases and decreases crosstalk mayincrease or decrease and the crosstalk compensation values may need tobe adjusted to account for changes in temperature. In variousembodiments, ToF system 100 may comprise a temperature sensor 133(depicted in FIG. 1) that measures the temperature during time of flightranging. The temperature sensor 133 may be in communication with theprocessor 126. The memory 132 may store a lookup table that may bereferenced to adjust crosstalk compensation values based on thetemperature measured by the temperature sensor.

FIG. 11 depicts a plot showing relationship between crosstalk andtemperature for a lookup table of an embodiment.

The plot shows the mean, min, and max deviations across corner modulesnormalized to 25 degree (C). The crosstalk compensation values may beadjusted based on the temperature according to a relationship like shownin FIG. 11. For example, dynamic crosstalk compensation calculatedduring operations occurring at temperature greater than 25 degreesCelsius may need to be increased and dynamic crosstalk compensationcalculated during operations occurring at temperatures less than 25degrees Celsius may need to decreased. In various embodiments, the meanvalue depicted in FIG. 11, may be used for crosstalk compensation andstored in a lookup table that is referenced according to the temperatedetected by the temperature sensor 133.

FIG. 12 depicts a flow diagram for dynamic crosstalk compensation of anembodiment.

At 1202, the optical receiver 104 may detect photon events within therespective zones (crosstalk monitoring zones and leakage monitoringzones). This data may be communicated to the processor 126. At 1204,data collected from the leakage monitoring zones may be checked by theprocessor 126 to determine whether leakage is too high (exceeds athreshold for a leakage-monitoring zone). If it is too high, the dynamiccrosstalk compensation may be stalled until leakage is reduced below thethreshold for the leakage monitoring zone or zones. At 1206, data fromthe crosstalk monitoring zones is accumulated. Once data from thecrosstalk monitoring zones has accumulated, noise may be calculated atstep 1208. In various embodiments, the noise may be modelled using aPoisson process because light behaves according to shot noiseprinciples. For example, for noise calculation, the standard deviationof measured photon events (detected photons) may be considered to be thesquare-root of the mean number of photon events dues to the Poissoniannature of light. Noise calculations based on this principle may then bepropagated through the dynamic crosstalk calculation using standardnoise propagation calculations.

In various embodiments, noise may be calculated after a ToF ranging. Ifthe noise in the signal is too high, additional data from the crosstalkmonitoring zones may needed. In various embodiments, a first set of datafrom the monitoring zones may be collected during a first ToF ranging. Asecond set of data from the monitoring zones may be collected during asecond ToF ranging, if needed. Additional sets of data may be collectedfrom additional ToF rangings until enough data has been collected tosatisfy a desired noise tolerance. The noise tolerance may vary invarious embodiments. And, in various embodiments, the noise tolerancemay be programmed.

At step 1212, the dynamic crosstalk compensation values may be generatedfor each histogram region of an optical receiver 104. Dynamic crosstalkcompensation may be calculated using photon event data accumulated atstep 1206. Dynamic crosstalk compensation may also be calculated withnative crosstalk compensation values 1214 that may be stored in a memory132. At step 1218 the dynamic crosstalk compensation values for thehistogram regions of the optical receiver may be adjusted based ontemperature measurements taken at 1216. This may yield final crosstalkcompensation values for each histogram region of the optical receiver,which can be used to remove crosstalk from photon-count histograms. Aswill be appreciated, the final crosstalk compensation values may bealigned in time with the expected location of crosstalk, which maycomprise the zero-range position. For example, compensation may only bedesirable for a given time period, and the magnitude of compensation maybe scaled as a function of the final crosstalk compensation value andthe estimated distribution of photons in an optical pulse used forranging.

In various embodiments, data collected from monitoring zones may need toadjusted for the temperature before dynamic crosstalk values arecompensated. This may be necessary because the native crosstalkcompensation values may be calculated in an environment at a differenttemperature. Consequently, incoming crosstalk data may be adjusted sothat calculated crosstalk compensation values are not skewed by thechanges in crosstalk behaviour due to temperature. In variousembodiments, native crosstalk values may be scaled to the currenttemperature for calculating dynamic crosstalk compensation values.

FIG. 13 depicts a method 1300 in accordance with an embodiment.

In various embodiments, the method 1300 comprises at a step 1302measuring a first set of photon-event data collected from a firstcrosstalk-monitoring zone of an optical receiver during a first periodof time of flight ranging; at a step 1304 measuring a second set ofphoton-event data collected from a second crosstalk-monitoring zone ofthe optical receiver during the first period of time of flight ranging;and at a step 1306 generating a first dynamic crosstalk compensationvalue for a first histogram region of the optical receiver using thefirst set of photon-event data, the second set of photon-event data, anda native crosstalk compensation value for the first histogram region ofthe optical receiver.

In various embodiments, the method 1300, may further comprise generatinga dynamic crosstalk compensation value for each histogram region of aplurality of histogram regions of the optical receiver by using thefirst set of photon-event data, the second set of photon-event data, anda native crosstalk compensation value for each histogram region of theoptical receiver.

In various embodiments, the method 1300, may further comprise measuringphoton-event data from a first leakage-monitoring zone of the opticalreceiver and determining that a leakage value of the firstleakage-monitoring zone is below a first threshold value.

In various embodiments, the method 1300, may further comprise measuringphoton-event data from a second leakage-monitoring zone; determiningthat a leakage value of the second leakage-monitoring zone is below asecond threshold value; measuring photon-event data from a thirdleakage-monitoring zone; and determining that a leakage value of thethird leakage-monitoring zone is below a third threshold value.

In various embodiments, the method 1300, may further comprise whereinthe first histogram region is positioned between the firstcrosstalk-monitoring zone and the second crosstalk-monitoring zone.

In various embodiments, the method 1300, may further comprise using thefirst dynamic crosstalk compensation value to remove crosstalk from aphoton-count histogram generated for the first histogram region.

In various embodiments, the method 1300, may further comprise using thephoton-count histogram to calculate a distance of an object from a timeof flight system comprising the optical receiver.

In various embodiments, the method 1300, may further comprise measuringa temperature; and adjusting the first dynamic crosstalk compensationvalue based on the temperature.

In various embodiments, the method 1300, may further comprisedetermining that a noise level is too high; measuring a third set ofphoton-event data collected from the first crosstalk-monitoring zone ofthe optical receiver during a second period of time of flight ranging;measuring a fourth set of photon-event data collected from the secondcrosstalk-monitoring zone of the optical receiver during the secondperiod of time of flight ranging; generating a second dynamic crosstalkcompensation value for the first histogram region of the opticalreceiver using the third set of photon-event data, the fourth set ofphoton-event data, and the native crosstalk compensation value for thefirst histogram region of the optical receiver; and averaging the firstdynamic crosstalk compensation value for the first histogram region andthe second dynamic crosstalk compensation value for the first histogramregion.

In various embodiments, the method 1300, may further comprise generatingthe first dynamic crosstalk compensation value for the first histogramregion of the optical receiver comprises interpolating between a firstreference value calculated from the first set of photon-event data and asecond reference value calculated from the second set of photon-eventdata.

In various embodiments, the method 1300, may further comprise wherewherein the photon-event data collected from the firstcrosstalk-monitoring zone comprises times of flight of photons detectedby the optical receiver at the first crosstalk-monitoring zone and thephoton-event data collected from the second crosstalk-monitoring zonecomprises times of flight of photons detected by the optical receiver atthe second crosstalk-monitoring zone.

FIG. 14 depicts a method 1400 of an embodiment.

In various embodiments, the method 1400 may comprise at a step 1402measuring photon-event data from a first leakage-monitoring zone of anoptical receiver; at a step 1404 determining that a leakage value of thefirst leakage-monitoring zone is below a first threshold value; at astep 1406 measuring a first set of photon-event data collected from afirst crosstalk-monitoring zone of the optical receiver during a firstperiod of time of flight ranging; at a step 1408 measuring a second setof photon-event data collected from a second crosstalk-monitoring zoneof the optical receiver during the first period of time of flightranging; at a step 1410 generating a first dynamic crosstalkcompensation value for a first histogram region of the optical receiverusing the first set of photon-event data, the second set of photon-eventdata, and a native cross-talk compensation value for the first histogramregion of the optical receiver; at a step 1412 measuring a temperature;and at a step 1414 producing a final dynamic crosstalk compensationvalue for the first histogram region by adjusting the first dynamiccrosstalk compensation value based on the temperature.

In various embodiments, the method 1400 may further comprise generatinga final dynamic crosstalk compensation value for each histogram regionof a plurality of histogram regions of the optical receiver by using thefirst set of photon-event data, the second set of photon-event data, thetemperature and a native cross-talk compensation value for eachhistogram region of the optical receiver.

In various embodiments, the method 1400 may further comprise wherein alookup table is used to adjust the first dynamic crosstalk compensationvalue based on the temperature.

In various embodiments, the method 1400 may further comprise whereingenerating the first dynamic crosstalk compensation value for the firsthistogram region of the optical receiver comprises interpolating betweena first reference value calculated from the first set of photon-eventdata and a second reference value calculated from the second set ofphoton-event data.

In various embodiments, the method 1400 may further comprise wherein thefirst histogram region is positioned between the firstcrosstalk-monitoring zone and the second crosstalk-monitoring zone.

Example 1

A method includes measuring a first set of photon-event data collectedfrom a first crosstalk-monitoring zone of an optical receiver during afirst period of time of flight ranging; measuring a second set ofphoton-event data collected from a second crosstalk-monitoring zone ofthe optical receiver during the first period of time of flight ranging;and generating a first dynamic crosstalk compensation value for a firsthistogram region of the optical receiver using the first set ofphoton-event data, the second set of photon-event data, and a nativecrosstalk compensation value for the first histogram region of theoptical receiver.

Example 2

The method of Example 1 further including generating a dynamic crosstalkcompensation value for each histogram region of a plurality of histogramregions of the optical receiver by using the first set of photon-eventdata, the second set of photon-event data, and a native crosstalkcompensation value for each histogram region of the optical receiver.

Example 3

The methods of Example 1 or Example 2 further including measuringphoton-event data from a first leakage-monitoring zone of the opticalreceiver and determining that a leakage value of the firstleakage-monitoring zone is below a first threshold value.

Example 4

The methods of Example 1 to Example 3 further including measuringphoton-event data from a second leakage-monitoring zone; determiningthat a leakage value of the second leakage-monitoring zone is below asecond threshold value; measuring photon-event data from a thirdleakage-monitoring zone; and determining that a leakage value of thethird leakage-monitoring zone is below a third threshold value.

Example 5

The methods of Example 1 to Example 4 further including wherein thefirst histogram region is positioned between the firstcrosstalk-monitoring zone and the second crosstalk-monitoring zone.

Example 6

The methods of Example 1 to Example 5 further including using the firstdynamic crosstalk compensation value to remove crosstalk from aphoton-count histogram generated for the first histogram region.

Example 7

The methods of Example 1 to Example 6 further including using thephoton-count histogram to calculate a distance of an object from a timeof flight system comprising the optical receiver.

Example 8

The methods of Example 1 to Example 7 further including measuring atemperature; and adjusting the first dynamic crosstalk compensationvalue based on the temperature.

Example 9

The methods of Example 1 to Example 8 further including determining thata noise level is too high; measuring a third set of photon-event datacollected from the first crosstalk-monitoring zone of the opticalreceiver during a second period of time of flight ranging; measuring afourth set of photon-event data collected from the secondcrosstalk-monitoring zone of the optical receiver during the secondperiod of time of flight ranging; generating a second dynamic crosstalkcompensation value for the first histogram region of the opticalreceiver using the third set of photon-event data, the fourth set ofphoton-event data, and the native crosstalk compensation value for thefirst histogram region of the optical receiver; and averaging the firstdynamic crosstalk compensation value for the first histogram region andthe second dynamic crosstalk compensation value for the first histogramregion.

Example 10

The methods of Example 1 to Example 9 further including generating thefirst dynamic crosstalk compensation value for the first histogramregion of the optical receiver comprises interpolating between a firstreference value calculated from the first set of photon-event data and asecond reference value calculated from the second set of photon-eventdata.

Example 11

The methods of Example 1 to Example 10 further including where whereinthe photon-event data collected from the first crosstalk-monitoring zonecomprises times of flight of photons detected by the optical receiver atthe first crosstalk-monitoring zone and the photon-event data collectedfrom the second crosstalk-monitoring zone comprises times of flight ofphotons detected by the optical receiver at the secondcrosstalk-monitoring zone.

Example 12

A Time of Flight system including an optical source configured to emitan light into an environment; an optical receiver that includes: a firsthistogram region comprising a plurality of radiation-sensitive pixels; afirst crosstalk-monitoring zone comprising a plurality ofradiation-sensitive pixels; and a second crosstalk-monitoring zonecomprising a plurality of radiation-sensitive pixels; and a processor incommunication with the optical source, the optical receiver and a memorywherein the memory stores an instruction set that, when executed, causesthe processor to: drive the optical source to emit light for a time offlight ranging; collect data for a photon-count histogram from the firsthistogram region; calculate a dynamic crosstalk compensation value forthe first histogram region from a first set of photon-event datareceived from the first crosstalk-monitoring zone during the time offlight ranging and a second set of photon-event data received from thesecond crosstalk-monitoring zone during the time of flight ranging; andadjust the photon-count histogram based on the dynamic crosstalkcompensation value.

Example 13

The Time of Flight system of Example 12, wherein the dynamic crosstalkcompensation value for the first histogram region is calculated byinterpolating between a first reference value calculated from the firstset of photon-event data and a second reference value calculated fromthe second set of photon-event data.

Example 14

The Time of Flight system of Example 12 or Example 13, wherein the firsthistogram region is positioned between the first crosstalk-monitoringzone and the second crosstalk-monitoring zone.

Example 15

The Time of Flight system of Example 12 to Example 14, wherein theinstruction set, when executed further causes the processor to calculatea distance of an object from the time of flight system using thephoton-count histogram.

Example 16

The Time of Flight system of Example 12 to Example 15, further includinga temperature sensor and wherein the instruction set, when executed,further causes the processor to adjust the dynamic crosstalkcompensation value for the first histogram region based on a temperaturemeasured by the temperature sensor.

Example 17

The Time of Flight system of Example 12 to Example 16, wherein theoptical receiver includes a plurality of histogram regions eachcomprising a plurality of radiation-sensitive pixels and wherein theinstruction set, when executed, further causes the processor to: collectdata for a photon-count histogram for each histogram region of theplurality of histogram regions; calculate a dynamic crosstalkcompensation value for each histogram region of the plurality ofhistogram regions from the first set of photon-event data received fromthe first crosstalk-monitoring zone during the time of flight rangingand the second set of photon-event data received from the secondcrosstalk-monitoring zone during the time of flight ranging; and adjustthe photon-count histogram for each region based on the dynamiccrosstalk compensation value for that region.

Example 18

The Time of Flight system of Example 12 to Example 17, further includingwherein the dynamic crosstalk compensation value for the first histogramregion is calculated using a native crosstalk compensation value for thefirst histogram region.

Example 19

A method may include measuring photon-event data from a firstleakage-monitoring zone of an optical receiver; determining that aleakage value of the first leakage-monitoring zone is below a firstthreshold value; measuring a first set of photon-event data collectedfrom a first crosstalk-monitoring zone of the optical receiver during afirst period of time of flight ranging; measuring a second set ofphoton-event data collected from a second crosstalk-monitoring zone ofthe optical receiver during the first period of time of flight ranging;generating a first dynamic crosstalk compensation value for a firsthistogram region of the optical receiver using the first set ofphoton-event data, the second set of photon-event data, and a nativecross-talk compensation value for the first histogram region of theoptical receiver; measuring a temperature; and producing a final dynamiccrosstalk compensation value for the first histogram region by adjustingthe first dynamic crosstalk compensation value based on the temperature.

Example 20

The method of Example 19 further including generating a final dynamiccrosstalk compensation value for each histogram region of a plurality ofhistogram regions of the optical receiver by using the first set ofphoton-event data, the second set of photon-event data, the temperatureand a native cross-talk compensation value for each histogram region ofthe optical receiver.

Example 21

The method of Example 19 or Example 20 further including comprisewherein a lookup table is used to adjust the first dynamic crosstalkcompensation value based on the temperature.

Example 22

The methods of Example 19 to Example 21 wherein generating the firstdynamic crosstalk compensation value for the first histogram region ofthe optical receiver comprises interpolating between a first referencevalue calculated from the first set of photon-event data and a secondreference value calculated from the second set of photon-event data.

Example 23

The methods of Example 19 to Example 22 wherein the first histogramregion is positioned between the first crosstalk-monitoring zone and thesecond crosstalk-monitoring zone.

While this invention has been described with reference to illustrativeembodiments, this description is not intended to be construed in alimiting sense. Various modifications and combinations of theillustrative embodiments, as well as other embodiments of the invention,will be apparent to persons skilled in the art upon reference to thedescription. It is therefore intended that the appended claims encompassany such modifications or embodiments.

What is claimed is:
 1. A method comprising: measuring a first set ofphoton-event data collected from a first crosstalk-monitoring zone of anoptical receiver during a first period of time of flight ranging;measuring a second set of photon-event data collected from a secondcrosstalk-monitoring zone of the optical receiver during the firstperiod of time of flight ranging; and generating a first dynamiccrosstalk compensation value for a first histogram region of the opticalreceiver using the first set of photon-event data, the second set ofphoton-event data, and a native crosstalk compensation value for thefirst histogram region of the optical receiver.
 2. The method of claim1, further comprising generating a dynamic crosstalk compensation valuefor each histogram region of a plurality of histogram regions of theoptical receiver by using the first set of photon-event data, the secondset of photon-event data, and a native crosstalk compensation value foreach histogram region of the optical receiver.
 3. The method of claim 1,further comprising measuring photon-event data from a firstleakage-monitoring zone of the optical receiver and determining that aleakage value of the first leakage-monitoring zone is below a firstthreshold value.
 4. The method of claim 3, further comprising: measuringphoton-event data from a second leakage-monitoring zone; determiningthat a leakage value of the second leakage-monitoring zone is below asecond threshold value; measuring photon-event data from a thirdleakage-monitoring zone; and determining that a leakage value of thethird leakage-monitoring zone is below a third threshold value.
 5. Themethod of claim 1, wherein the first histogram region is positionedbetween the first crosstalk-monitoring zone and the secondcrosstalk-monitoring zone.
 6. The method of claim 1, further comprising,using the first dynamic crosstalk compensation value to remove crosstalkfrom a photon-count histogram generated for the first histogram region.7. The method of claim 6, further comprising, using the photon-counthistogram to calculate a distance of an object from a time of flightsystem comprising the optical receiver.
 8. The method of claim 1,further comprising: measuring a temperature; and adjusting the firstdynamic crosstalk compensation value based on the temperature.
 9. Themethod of claim 1, further comprising: determining that a noise level istoo high; measuring a third set of photon-event data collected from thefirst crosstalk-monitoring zone of the optical receiver during a secondperiod of time of flight ranging; measuring a fourth set of photon-eventdata collected from the second crosstalk-monitoring zone of the opticalreceiver during the second period of time of flight ranging; generatinga second dynamic crosstalk compensation value for the first histogramregion of the optical receiver using the third set of photon-event data,the fourth set of photon-event data, and the native crosstalkcompensation value for the first histogram region of the opticalreceiver; and averaging the first dynamic crosstalk compensation valuefor the first histogram region and the second dynamic crosstalkcompensation value for the first histogram region.
 10. The method ofclaim 1, wherein generating the first dynamic crosstalk compensationvalue for the first histogram region of the optical receiver comprisesinterpolating between a first reference value calculated from the firstset of photon-event data and a second reference value calculated fromthe second set of photon-event data.
 11. The method of claim 1, whereinthe photon-event data collected from the first crosstalk-monitoring zonecomprises times of flight of photons detected by the optical receiver atthe first crosstalk-monitoring zone and the photon-event data collectedfrom the second crosstalk-monitoring zone comprises times of flight ofphotons detected by the optical receiver at the secondcrosstalk-monitoring zone.
 12. A Time of Flight system comprising: anoptical source configured to emit an light into an environment; anoptical receiver comprising: a first histogram region comprising aplurality of radiation-sensitive pixels; a first crosstalk-monitoringzone comprising a plurality of radiation-sensitive pixels; and a secondcrosstalk-monitoring zone comprising a plurality of radiation-sensitivepixels; and a processor in communication with the optical source, theoptical receiver and a memory wherein the memory stores an instructionset that, when executed, causes the processor to: drive the opticalsource to emit light for a time of flight ranging; collect data for aphoton-count histogram from the first histogram region; calculate adynamic crosstalk compensation value for the first histogram region froma first set of photon-event data received from the firstcrosstalk-monitoring zone during the time of flight ranging and a secondset of photon-event data received from the second crosstalk-monitoringzone during the time of flight ranging; and adjust the photon-counthistogram based on the dynamic crosstalk compensation value.
 13. TheTime of Flight system of claim 12, wherein the dynamic crosstalkcompensation value for the first histogram region is calculated byinterpolating between a first reference value calculated from the firstset of photon-event data and a second reference value calculated fromthe second set of photon-event data.
 14. The Time of Flight system ofclaim 12, wherein the first histogram region is positioned between thefirst crosstalk-monitoring zone and the second crosstalk-monitoringzone.
 15. The Time of Flight system of claim 12, wherein the instructionset, when executed further causes the processor to calculate a distanceof an object from the time of flight system using the photon-counthistogram.
 16. The Time of Flight system of claim 12, further comprisinga temperature sensor and wherein the instruction set, when executed,further causes the processor to adjust the dynamic crosstalkcompensation value for the first histogram region based on a temperaturemeasured by the temperature sensor.
 17. The Time of Flight system ofclaim 12, wherein the optical receiver comprises a plurality ofhistogram regions each comprising a plurality of radiation-sensitivepixels and wherein the instruction set, when executed, further causesthe processor to: collect data for a photon-count histogram for eachhistogram region of the plurality of histogram regions; calculate adynamic crosstalk compensation value for each histogram region of theplurality of histogram regions from the first set of photon-event datareceived from the first crosstalk-monitoring zone during the time offlight ranging and the second set of photon-event data received from thesecond crosstalk-monitoring zone during the time of flight ranging; andadjust the photon-count histogram for each region based on the dynamiccrosstalk compensation value for that region.
 18. The Time of Flightsystem of claim 12, further comprising wherein the dynamic crosstalkcompensation value for the first histogram region is calculated using anative crosstalk compensation value for the first histogram region. 19.A method comprising: measuring photon-event data from a firstleakage-monitoring zone of an optical receiver; determining that aleakage value of the first leakage-monitoring zone is below a firstthreshold value; measuring a first set of photon-event data collectedfrom a first crosstalk-monitoring zone of the optical receiver during afirst period of time of flight ranging; measuring a second set ofphoton-event data collected from a second crosstalk-monitoring zone ofthe optical receiver during the first period of time of flight ranging;generating a first dynamic crosstalk compensation value for a firsthistogram region of the optical receiver using the first set ofphoton-event data, the second set of photon-event data, and a nativecross-talk compensation value for the first histogram region of theoptical receiver; measuring a temperature; and producing a final dynamiccrosstalk compensation value for the first histogram region by adjustingthe first dynamic crosstalk compensation value based on the temperature.20. The method of claim 19, further comprising generating a finaldynamic crosstalk compensation value for each histogram region of aplurality of histogram regions of the optical receiver by using thefirst set of photon-event data, the second set of photon-event data, thetemperature and a native cross-talk compensation value for eachhistogram region of the optical receiver.
 21. The method of claim 20,wherein a lookup table is used to adjust the first dynamic crosstalkcompensation value based on the temperature.
 22. The method of claim 19,wherein generating the first dynamic crosstalk compensation value forthe first histogram region of the optical receiver comprisesinterpolating between a first reference value calculated from the firstset of photon-event data and a second reference value calculated fromthe second set of photon-event data.
 23. The method of claim 19, whereinthe first histogram region is positioned between the firstcrosstalk-monitoring zone and the second crosstalk-monitoring zone.